package com.example.houduan.domain;

import java.util.ArrayList;
import java.util.List;

public class Wz_sbExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public Wz_sbExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andUidIsNull() {
            addCriterion("`uid` is null");
            return (Criteria) this;
        }

        public Criteria andUidIsNotNull() {
            addCriterion("`uid` is not null");
            return (Criteria) this;
        }

        public Criteria andUidEqualTo(String value) {
            addCriterion("`uid` =", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotEqualTo(String value) {
            addCriterion("`uid` <>", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidGreaterThan(String value) {
            addCriterion("`uid` >", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidGreaterThanOrEqualTo(String value) {
            addCriterion("`uid` >=", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidLessThan(String value) {
            addCriterion("`uid` <", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidLessThanOrEqualTo(String value) {
            addCriterion("`uid` <=", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidLike(String value) {
            addCriterion("`uid` like", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotLike(String value) {
            addCriterion("`uid` not like", value, "uid");
            return (Criteria) this;
        }

        public Criteria andUidIn(List<String> values) {
            addCriterion("`uid` in", values, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotIn(List<String> values) {
            addCriterion("`uid` not in", values, "uid");
            return (Criteria) this;
        }

        public Criteria andUidBetween(String value1, String value2) {
            addCriterion("`uid` between", value1, value2, "uid");
            return (Criteria) this;
        }

        public Criteria andUidNotBetween(String value1, String value2) {
            addCriterion("`uid` not between", value1, value2, "uid");
            return (Criteria) this;
        }

        public Criteria andDateIsNull() {
            addCriterion("`date` is null");
            return (Criteria) this;
        }

        public Criteria andDateIsNotNull() {
            addCriterion("`date` is not null");
            return (Criteria) this;
        }

        public Criteria andDateEqualTo(String value) {
            addCriterion("`date` =", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotEqualTo(String value) {
            addCriterion("`date` <>", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateGreaterThan(String value) {
            addCriterion("`date` >", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateGreaterThanOrEqualTo(String value) {
            addCriterion("`date` >=", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateLessThan(String value) {
            addCriterion("`date` <", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateLessThanOrEqualTo(String value) {
            addCriterion("`date` <=", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateLike(String value) {
            addCriterion("`date` like", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotLike(String value) {
            addCriterion("`date` not like", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateIn(List<String> values) {
            addCriterion("`date` in", values, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotIn(List<String> values) {
            addCriterion("`date` not in", values, "date");
            return (Criteria) this;
        }

        public Criteria andDateBetween(String value1, String value2) {
            addCriterion("`date` between", value1, value2, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotBetween(String value1, String value2) {
            addCriterion("`date` not between", value1, value2, "date");
            return (Criteria) this;
        }

        public Criteria andZlIsNull() {
            addCriterion("zl is null");
            return (Criteria) this;
        }

        public Criteria andZlIsNotNull() {
            addCriterion("zl is not null");
            return (Criteria) this;
        }

        public Criteria andZlEqualTo(String value) {
            addCriterion("zl =", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlNotEqualTo(String value) {
            addCriterion("zl <>", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlGreaterThan(String value) {
            addCriterion("zl >", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlGreaterThanOrEqualTo(String value) {
            addCriterion("zl >=", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlLessThan(String value) {
            addCriterion("zl <", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlLessThanOrEqualTo(String value) {
            addCriterion("zl <=", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlLike(String value) {
            addCriterion("zl like", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlNotLike(String value) {
            addCriterion("zl not like", value, "zl");
            return (Criteria) this;
        }

        public Criteria andZlIn(List<String> values) {
            addCriterion("zl in", values, "zl");
            return (Criteria) this;
        }

        public Criteria andZlNotIn(List<String> values) {
            addCriterion("zl not in", values, "zl");
            return (Criteria) this;
        }

        public Criteria andZlBetween(String value1, String value2) {
            addCriterion("zl between", value1, value2, "zl");
            return (Criteria) this;
        }

        public Criteria andZlNotBetween(String value1, String value2) {
            addCriterion("zl not between", value1, value2, "zl");
            return (Criteria) this;
        }

        public Criteria andWzneedIsNull() {
            addCriterion("wzneed is null");
            return (Criteria) this;
        }

        public Criteria andWzneedIsNotNull() {
            addCriterion("wzneed is not null");
            return (Criteria) this;
        }

        public Criteria andWzneedEqualTo(String value) {
            addCriterion("wzneed =", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedNotEqualTo(String value) {
            addCriterion("wzneed <>", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedGreaterThan(String value) {
            addCriterion("wzneed >", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedGreaterThanOrEqualTo(String value) {
            addCriterion("wzneed >=", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedLessThan(String value) {
            addCriterion("wzneed <", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedLessThanOrEqualTo(String value) {
            addCriterion("wzneed <=", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedLike(String value) {
            addCriterion("wzneed like", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedNotLike(String value) {
            addCriterion("wzneed not like", value, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedIn(List<String> values) {
            addCriterion("wzneed in", values, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedNotIn(List<String> values) {
            addCriterion("wzneed not in", values, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedBetween(String value1, String value2) {
            addCriterion("wzneed between", value1, value2, "wzneed");
            return (Criteria) this;
        }

        public Criteria andWzneedNotBetween(String value1, String value2) {
            addCriterion("wzneed not between", value1, value2, "wzneed");
            return (Criteria) this;
        }

        public Criteria andOldchIsNull() {
            addCriterion("oldch is null");
            return (Criteria) this;
        }

        public Criteria andOldchIsNotNull() {
            addCriterion("oldch is not null");
            return (Criteria) this;
        }

        public Criteria andOldchEqualTo(String value) {
            addCriterion("oldch =", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchNotEqualTo(String value) {
            addCriterion("oldch <>", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchGreaterThan(String value) {
            addCriterion("oldch >", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchGreaterThanOrEqualTo(String value) {
            addCriterion("oldch >=", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchLessThan(String value) {
            addCriterion("oldch <", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchLessThanOrEqualTo(String value) {
            addCriterion("oldch <=", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchLike(String value) {
            addCriterion("oldch like", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchNotLike(String value) {
            addCriterion("oldch not like", value, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchIn(List<String> values) {
            addCriterion("oldch in", values, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchNotIn(List<String> values) {
            addCriterion("oldch not in", values, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchBetween(String value1, String value2) {
            addCriterion("oldch between", value1, value2, "oldch");
            return (Criteria) this;
        }

        public Criteria andOldchNotBetween(String value1, String value2) {
            addCriterion("oldch not between", value1, value2, "oldch");
            return (Criteria) this;
        }

        public Criteria andBzIsNull() {
            addCriterion("bz is null");
            return (Criteria) this;
        }

        public Criteria andBzIsNotNull() {
            addCriterion("bz is not null");
            return (Criteria) this;
        }

        public Criteria andBzEqualTo(String value) {
            addCriterion("bz =", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzNotEqualTo(String value) {
            addCriterion("bz <>", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzGreaterThan(String value) {
            addCriterion("bz >", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzGreaterThanOrEqualTo(String value) {
            addCriterion("bz >=", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzLessThan(String value) {
            addCriterion("bz <", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzLessThanOrEqualTo(String value) {
            addCriterion("bz <=", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzLike(String value) {
            addCriterion("bz like", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzNotLike(String value) {
            addCriterion("bz not like", value, "bz");
            return (Criteria) this;
        }

        public Criteria andBzIn(List<String> values) {
            addCriterion("bz in", values, "bz");
            return (Criteria) this;
        }

        public Criteria andBzNotIn(List<String> values) {
            addCriterion("bz not in", values, "bz");
            return (Criteria) this;
        }

        public Criteria andBzBetween(String value1, String value2) {
            addCriterion("bz between", value1, value2, "bz");
            return (Criteria) this;
        }

        public Criteria andBzNotBetween(String value1, String value2) {
            addCriterion("bz not between", value1, value2, "bz");
            return (Criteria) this;
        }

        public Criteria andTempIsNull() {
            addCriterion("`temp` is null");
            return (Criteria) this;
        }

        public Criteria andTempIsNotNull() {
            addCriterion("`temp` is not null");
            return (Criteria) this;
        }

        public Criteria andTempEqualTo(String value) {
            addCriterion("`temp` =", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempNotEqualTo(String value) {
            addCriterion("`temp` <>", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempGreaterThan(String value) {
            addCriterion("`temp` >", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempGreaterThanOrEqualTo(String value) {
            addCriterion("`temp` >=", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempLessThan(String value) {
            addCriterion("`temp` <", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempLessThanOrEqualTo(String value) {
            addCriterion("`temp` <=", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempLike(String value) {
            addCriterion("`temp` like", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempNotLike(String value) {
            addCriterion("`temp` not like", value, "temp");
            return (Criteria) this;
        }

        public Criteria andTempIn(List<String> values) {
            addCriterion("`temp` in", values, "temp");
            return (Criteria) this;
        }

        public Criteria andTempNotIn(List<String> values) {
            addCriterion("`temp` not in", values, "temp");
            return (Criteria) this;
        }

        public Criteria andTempBetween(String value1, String value2) {
            addCriterion("`temp` between", value1, value2, "temp");
            return (Criteria) this;
        }

        public Criteria andTempNotBetween(String value1, String value2) {
            addCriterion("`temp` not between", value1, value2, "temp");
            return (Criteria) this;
        }

        public Criteria andDfIsNull() {
            addCriterion("df is null");
            return (Criteria) this;
        }

        public Criteria andDfIsNotNull() {
            addCriterion("df is not null");
            return (Criteria) this;
        }

        public Criteria andDfEqualTo(String value) {
            addCriterion("df =", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfNotEqualTo(String value) {
            addCriterion("df <>", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfGreaterThan(String value) {
            addCriterion("df >", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfGreaterThanOrEqualTo(String value) {
            addCriterion("df >=", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfLessThan(String value) {
            addCriterion("df <", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfLessThanOrEqualTo(String value) {
            addCriterion("df <=", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfLike(String value) {
            addCriterion("df like", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfNotLike(String value) {
            addCriterion("df not like", value, "df");
            return (Criteria) this;
        }

        public Criteria andDfIn(List<String> values) {
            addCriterion("df in", values, "df");
            return (Criteria) this;
        }

        public Criteria andDfNotIn(List<String> values) {
            addCriterion("df not in", values, "df");
            return (Criteria) this;
        }

        public Criteria andDfBetween(String value1, String value2) {
            addCriterion("df between", value1, value2, "df");
            return (Criteria) this;
        }

        public Criteria andDfNotBetween(String value1, String value2) {
            addCriterion("df not between", value1, value2, "df");
            return (Criteria) this;
        }

        public Criteria andDfdateIsNull() {
            addCriterion("dfdate is null");
            return (Criteria) this;
        }

        public Criteria andDfdateIsNotNull() {
            addCriterion("dfdate is not null");
            return (Criteria) this;
        }

        public Criteria andDfdateEqualTo(String value) {
            addCriterion("dfdate =", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateNotEqualTo(String value) {
            addCriterion("dfdate <>", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateGreaterThan(String value) {
            addCriterion("dfdate >", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateGreaterThanOrEqualTo(String value) {
            addCriterion("dfdate >=", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateLessThan(String value) {
            addCriterion("dfdate <", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateLessThanOrEqualTo(String value) {
            addCriterion("dfdate <=", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateLike(String value) {
            addCriterion("dfdate like", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateNotLike(String value) {
            addCriterion("dfdate not like", value, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateIn(List<String> values) {
            addCriterion("dfdate in", values, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateNotIn(List<String> values) {
            addCriterion("dfdate not in", values, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateBetween(String value1, String value2) {
            addCriterion("dfdate between", value1, value2, "dfdate");
            return (Criteria) this;
        }

        public Criteria andDfdateNotBetween(String value1, String value2) {
            addCriterion("dfdate not between", value1, value2, "dfdate");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}